package com.trg.flex.frm
{
	import flash.events.IEventDispatcher;
	
	import mx.validators.Validator;
	
	public interface FormInput extends FormElement, IEventDispatcher
	{
		/**
		 * Whether the input is currently valid. The implementation should
		 * cache this value, because it may be querried often.
		 */
		function get valid():Boolean;
		
		function isInvalidRequired():Boolean;
		
		function clearValidation():void;
		
		function set type(type:Class):void;
		
		function setMetaData(metaData:Object):void;
	}
}